package hot;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * @author lakersUp
 * @Classname
 * @Description
 * @Date 2022/4/2 10:10
 * @Version 1.0
 */
public class Hot438findAnagrams {
        public List<Integer> findAnagrams(String s, String p){
            int n=s.length();
            int m=p.length();
            List<Integer> res = new ArrayList<>();
            if(m>n){
                return res;
            }

            int[] sCnt = new int[26];
            int[] pCnt = new int[26];

            for(int i=0;i<m;i++){
                pCnt[p.charAt(i)-'a']++;
                sCnt[s.charAt(i)-'a']++;
            }
            if(Arrays.equals(pCnt,sCnt)){
                res.add(0);
            }
            for(int i=m;i<n;i++){
                pCnt[p.charAt(i-m)-'a']--;
                pCnt[p.charAt(i)-'a']++;
                if(Arrays.equals(pCnt,sCnt)){
                    res.add(i-m+1);
                }
            }
            return res;



    }
}
